package com.guagua.blog.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;

@Data
@TableName("blog_article")
public class Article {
    /** 文章ID */
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /** 文章标题 */
    private String title;
    
    /** 文章内容 */
    private String content;
    
    /** 文章描述/摘要 */
    private String description;
    
    /** 封面图片URL */
    private String coverImage;
    
    /** 作者ID */
    private Long authorId;
    
    /** 浏览量 */
    private Integer viewCount;
    
    /** 点赞数 */
    private Integer likeCount;

    /** 评论数 */
    private Integer commentCount;
    
    /** 创建时间 */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    
    /** 更新时间 */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    
    /** 逻辑删除标志(0-未删除，1-已删除) */
    @TableLogic
    private Integer deleted;
    
    /** 作者名称（非数据库字段） */
    @TableField(exist = false)
    private String authorName;
    
    /** 作者头像（非数据库字段） */
    @TableField(exist = false)
    private String authorAvatar;
    
    /** 文章标签列表（非数据库字段） */
    @TableField(exist = false)
    private List<Tag> tags;
    
    /** 收藏时间（非数据库字段） */
    @TableField(exist = false)
    private LocalDateTime favoriteTime;
    
    /** 浏览时间（非数据库字段） */
    @TableField(exist = false)
    private LocalDateTime viewTime;
    
    /** 点赞时间（非数据库字段） */
    @TableField(exist = false)
    private LocalDateTime likeTime;
} 